collections
namedtuple
namedtuple是一个函数,用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,可以用属性来引用tuple的某个元素。
1 | from collections import namedtuple |
deque
class collections.deque([iterable[, maxlen]])
返回一个新的双向队列对象,从左到右初始化(用方法 append()) ,从 iterable (迭代对象) 数据创建。如果 iterable 没有指定,新队列为空。
双向队列(deque)对象支持以下方法:
append(x)
添加 x 到右端。
appendleft(x)
添加 x 到左端。
clear()
移除所有元素,使其长度为0.
copy()
创建一份浅拷贝。
deque是为了高效实现插入和删除操作的双向列表。
ChainMap
ChainMap可以把一组dict串起来并组成一个逻辑上的dict。
当程序可以以多种方式传递参数的时候,可以使用ChainMap实现参数的优先级查找,即先查命令行参数->环境变量->默认参数
1 | from collections import ChainMap |
Counter
一个提供一个快捷技术工具。
1 |
|
base64
base64.b64encode(s, altchars=None)
对 bytes-like object s 进行 Base64 编码,并返回编码后的 bytes。
可选项 altchars 必须是一个长 2 字节的 bytes-like object,它指定了用于替换 + 和 / 的字符。这允许应用程序生成 URL 或文件系统安全的 Base64 字符串。默认值是 None,使用标准 Base64 字母表。
base64.b64decode(s, altchars=None, validate=False)
解码 Base64 编码过的 bytes-like object 或 ASCII 字符串 s 并返回解码过的 bytes。
可选项 altchars 必须是一个长 2 字节的 bytes-like object,它指定了用于替换 + 和 / 的字符。
如果 s 被不正确地填写,一个 binascii.Error 错误将被抛出。
如果 validate 值为 False (默认情况),则在填充检查前,将丢弃既不在标准 base-64 字母表之中也不在备用字母表中的字符。如果 validate 为 True,这些非 base64 字符将导致 binascii.Error。
base64.urlsafe_b64encode(s)
编码 bytes-like object s,使用 URL 与文件系统安全的字母表,使用 - 以及 _ 代替标准 Base64 字母表中的 + 和 /。返回编码过的 bytes。结果中可能包含 =。
base64.urlsafe_b64decode(s)
解码上述加密。